﻿Public Class LocalizaPessoa
    Public loctipo As String
    Public nome As String
    Public codigo As String
    Public parametro As String
    Dim objBBL As New BLLAgendamento
    Sub limpa()
        txtlocalizar.Text = ""
        dgdados.Columns.Clear()
    End Sub
    Private Sub LocalizaPessoa_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        dgdados.DataSource = Nothing
        Me.Text = "Localiza  " & loctipo
        Label1.Text = "Localiza  " & loctipo
        limpa()
        If parametro <> "" Then
            cblocalizar.SelectedIndex = 1
            txtlocalizar.Text = parametro
            blocaliza_Click(sender, e)
        Else
            cblocalizar.SelectedIndex = 1
        End If
    End Sub
    Private Sub DataGridView1_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgdados.CellDoubleClick
        If e.RowIndex >= 0 Then 'procura o index que ele clicou
            codigo = dgdados.Rows(e.RowIndex).Cells(0).Value.ToString() ' atribui o codigo na variavel global, para talvez alterar mais pra frente
            nome = dgdados.Rows(e.RowIndex).Cells(1).Value 'atribui os valores da linha passando o nome da coluna especifica
            Me.Close()
        End If
    End Sub



    Private Sub blocaliza_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles blocaliza.Click
        Try
            If txtlocalizar.Text <> "" Then 'verifica se não existe nenhum valor
                If cblocalizar.SelectedIndex = 1 Then
                    dgdados.DataSource = objBBL.LocalizarPessoa(txtlocalizar.Text, loctipo)
                Else
                    Try
                        Dim cod As Integer = txtlocalizar.Text
                        dgdados.DataSource = objBBL.LocalizarPessoa(cod, loctipo)
                    Catch ex As Exception
                        MsgBox("Inserir somente números no campo código", MsgBoxStyle.Critical)
                    End Try
                End If

                dgdados.Columns(0).HeaderText = "Código" ' define o nome da coluna
                dgdados.Columns(1).HeaderText = "Nome"
                dgdados.Columns(2).HeaderText = "R.A"
                dgdados.Columns(3).HeaderText = "Matricula" 'funcionario
                dgdados.Columns(4).HeaderText = "Matricula" 'professor
                dgdados.Columns("alu_ra").Visible = False
                dgdados.Columns("fun_matricula").Visible = False
                dgdados.Columns("pro_matricula").Visible = False
                If dgdados.RowCount > 0 Then
                    If loctipo = "Aluno" Then
                        dgdados.Columns("alu_ra").Visible = True
                        dgdados.Columns(0).Width = 60 'define a largura da coluna
                        dgdados.Columns(1).Width = 170
                        dgdados.Columns(2).Width = 170 'define a largura da coluna
                    ElseIf loctipo = "Funcionário" Then
                        dgdados.Columns("fun_matricula").Visible = True
                        dgdados.Columns(0).Width = 60 'define a largura da coluna
                        dgdados.Columns(1).Width = 170
                        dgdados.Columns(3).Width = 170 'define a largura da coluna
                    ElseIf loctipo = "Professor" Then
                        dgdados.Columns("pro_matricula").Visible = True
                        dgdados.Columns(0).Width = 60 'define a largura da coluna
                        dgdados.Columns(1).Width = 170
                        dgdados.Columns(4).Width = 170 'define a largura da coluna
                    Else
                        dgdados.Columns(0).Width = 60 'define a largura da coluna
                        dgdados.Columns(1).Width = 340
                    End If
                    txtlocalizar.Text = ""
                Else
                    MessageBox.Show(loctipo & " não localizado")
                End If
            Else
                MessageBox.Show("Inserir Nome a ser localizado!")
            End If
        Catch
        Finally

        End Try
    End Sub

    Private Sub txtlocalizar_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtlocalizar.KeyPress
        If Not Char.IsLetterOrDigit(e.KeyChar) And Not e.KeyChar = vbBack Then
            e.Handled = True
        End If
        If e.KeyChar = Convert.ToChar(Keys.Return) Then
            e.Handled = True
            Try
                blocaliza_Click(sender, e)
            Catch ex As Exception

            End Try
        End If
    End Sub

    Private Sub cblocalizar_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cblocalizar.SelectedIndexChanged
        txtlocalizar.Text=""
    End Sub
End Class